#ifndef CAMERA_H
#define CAMERA_H
#include <cmath>
#include <SDL/SDL.h>
#include <GL/gl.h>
#include <GL/glu.h>
#include "vector3d.h"

class Camera {

public:
	Vector3D loc;
	float camPitch, camYaw;
	float moveVel;
	float mouseVel;
	bool mouseIn, isMoved;
	void lockCamera();
	void moveCamera(float dir);
	void moveCameraUp(float dir);

public:
	Camera();
	Camera(Vector3D loc);
	Camera(Vector3D loc, float yaw, float pitch);
	Camera(Vector3D loc, float yaw, float pitch, float mv, float mov);
	void Control();
	void updateCamera();
	Vector3D getVector();
	Vector3D getLocation();
	float getPitch();
	float getYaw();
	float getMoveVel();
	float getMouseVel();

	void setLocation(Vector3D vec);
	void lookAt(float pitch, float yaw);
	void setSpeed(float mv, float mov);
};

#endif
